Insurance Agent Scraper — State Farm & Farmers Agent Leads
Pricing
from $7.00 / 1,000 agent scrapeds
Insurance Agent Scraper — State Farm & Farmers Agent Leads
Scrape US insurance agents by city from State Farm & Farmers directories. Get agent & agency names, phones, full office addresses, lines of business, emails & leads — plus optional website contact enrichment and monitoring. No login, no key, no browser.
Pricing
from $7.00 / 1,000 agent scrapeds
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Insurance Agent Scraper — State Farm & Farmers Agent Leads (Names, Phones, Addresses & Emails)
Extract US insurance agents by city across multiple carriers in one run — State Farm and Farmers — with the fields that actually matter for outreach: agent/agency name, phone, full office address + ZIP, lines of business, profile URL, and a 0–100 lead score. Optionally turn every agent into a ready-to-contact lead by crawling their own site for emails, phone numbers and social links.
No login, no cookies, no browser — fast, clean extraction straight from each carrier's public agent directory.
Why this insurance agent scraper?
Most insurance-lead tools either scrape one carrier, or pull noisy Google Maps results full of unrelated businesses. This actor ships a unified, multi-carrier dataset from the carriers' own clean directories, so every row has a consistent shape and real contact data:
| Data | Typical scrapers | This actor |
|---|---|---|
| Multiple carriers in one run | ❌ single brand | ✅ State Farm + Farmers |
| Agent / agency name | ✅ | ✅ |
| Office phone | partial | ✅ |
| Full street address + ZIP | partial | ✅ |
| Lines of business (auto, home, life…) | ❌ | ✅ |
| Agent email (from their own site) | ❌ | ✅ opt-in |
| Social links (FB / IG / LinkedIn / X / YT) | ❌ | ✅ opt-in |
| Lead score (0–100) | ❌ | ✅ |
| Monitoring (only new agents) | ❌ | ✅ |
Use cases
- Lead generation — sell to local insurance agents: agency-management software, CRMs, lead vendors, marketing/web services, IMOs/FMOs, payroll, E&O insurance. Score by contactability (
leadScore) and reach them directly (phone,contactEmails). - Insurtech & B2B sales — build targeted agent lists by city, carrier, and lines of business.
- Recruiting — find producers and agency owners in a market by carrier and location.
- Market & competitive intelligence — map agent density by carrier and metro; track coverage of auto, home, life and commercial lines.
- Territory planning — pull every agent across a list of cities for routing, partnerships, or expansion analysis.
How to use
- Sign up for Apify — the free plan is enough to try this actor.
- Open the Insurance Agent Scraper, choose carriers and enter locations as
City, ST, then click Start. - Watch agents stream into the dataset table.
- Export as JSON, CSV, Excel, XML, or RSS — or pull results via the Apify API.
Input
{"carriers": ["State Farm", "Farmers"],"locations": ["Austin, TX", "Phoenix, AZ"],"maxResultsPerLocation": 100,"maxResults": 300,"withPhoneOnly": false,"enrichAgentContacts": true,"deduplicateAgents": true,"monitorMode": false}
- carriers —
State Farmand/orFarmers(default: both). - locations — US locations as
City, ST(e.g.Austin, TX,Tampa, FL). Each location is scraped on every selected carrier. - startUrls (optional) — direct carrier city pages (
statefarm.com/agent/us/tx/austin,agents.farmers.com/tx/austin). - maxResultsPerLocation / maxResults — caps per location (per carrier) and for the whole run.
- withPhoneOnly / withEmailOnly — keep only agents that have a phone / an email.
- enrichAgentContacts (default false) — crawl each agent's profile/site (and a contact/about page on their own domain) for emails, phones and social links.
- deduplicateAgents (default true) — emit each agent once per run.
- monitorMode (default false) — emit only agents not seen in previous runs (see below).
Output
One record per agent (type: "agent"):
{"type": "agent","carrier": "State Farm","name": "Derek Allen","agencyName": "Derek Allen","profileUrl": "https://www.statefarm.com/agent/us/tx/austin/derek-allen-2cxwb6t1wge","phone": "(512) 454-8623","email": null,"street": "6111 Ranch Road 620 N Bldg A Ste 200","city": "Austin","state": "TX","postalCode": "78732","country": "US","linesOfBusiness": ["Life", "Home", "Auto"],"contactEmails": ["info@derekallenagency.com"],"contactPhones": ["+1 512-454-8623"],"socialLinks": { "facebook": "https://www.facebook.com/derekallensf" },"leadScore": 78,"searchCity": "Austin","searchState": "TX","scrapedAt": "2026-06-15T12:00:00.000Z"}
contactEmails, contactPhones and socialLinks populate only when enrichAgentContacts is on and the agent has a public site.
Automate & schedule
Run this actor on autopilot and pull results into your own stack:
- Apify API — start runs, fetch datasets, manage schedules over REST.
- apify-client for JavaScript and apify-client for Python — official SDKs.
- Schedules — run it daily/weekly to keep agent lists fresh or watch a market for new agents.
- Webhooks — trigger downstream actions (CRM import, Slack alert, email sequence) the moment a run finishes.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/insurance-agent-scraper').call({carriers: ['State Farm', 'Farmers'],locations: ['Austin, TX'],enrichAgentContacts: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} insurance agents`);
Monitoring mode (only new agents)
Turn on monitorMode and the actor remembers (in a named key-value store) every agent it has returned, so future runs emit only agents not seen before — perfect for tracking new agents entering a market. It works with Apify Schedules, not against them: the schedule triggers the run, and monitoring mode decides which records are new. Use a distinct monitorStoreName per tracked market to keep histories separate.
Integrate with any app
Connect the dataset to 5,000+ apps — no code required:
- Make — multi-step automation scenarios.
- Zapier — push new agent leads straight into your CRM.
- Slack — get notified when a monitored market gets new agents.
- Google Drive / Sheets — auto-export every run to a spreadsheet.
- Airbyte — pipe results into your data warehouse.
- GitHub — trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find State Farm and Farmers agents in Austin and list their phones" and let it run this scraper for you.
More scrapers from scrapesage
Build a complete B2B lead-gen stack:
- SAM.gov Scraper — federal contract opportunities & contacts.
- USAspending Scraper — federal awards, contractors & leads.
- Companies House Scraper — UK companies, directors & PSCs.
- Singapore Company Scraper — UEN registry & business leads.
- Healthgrades Scraper — doctors, reviews & provider leads.
- Bark Listing Scraper — service-provider leads from Bark.
- Eventbrite Scraper — events + organizer leads.
- Google Maps Email Extractor — local business emails & contacts.
Tips
- Carriers: State Farm and Farmers are parsed from their public SSR city directories. Pick the carriers that match your target book.
- Coverage: scrape a list of metros (
["Austin, TX", "Dallas, TX", "Houston, TX"]) to build a statewide agent list. Each city page returns the agents the carrier lists for that city. - Emails: turn on
enrichAgentContactsto crawl the agent's own site for emails and socials (State Farm and Farmers don't publish email in the directory). - Cost control: deduplication is on by default; enrichment only runs when an agent has a site to crawl.
FAQ
Which carriers are supported? State Farm and Farmers today — the two largest agent-based US carriers, chosen because they publish clean, reliable agent directories. More carriers can be added on request.
How do I scrape agents for a whole state? List the metros you care about in locations (e.g. several City, ST entries). Each is scraped on every selected carrier and merged into one dataset.
Where do the emails come from? Only from enrichAgentContacts, which visits the agent's own public site — the same thing a human visitor would see. The carriers don't publish agent emails in their directories.
Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.
How do I get only new agents over time? Turn on monitorMode and schedule the actor — each run emits only agents not seen in previous runs.
Is scraping this data legal? This actor collects publicly available business-directory data only. You are responsible for using it in compliance with applicable laws (e.g. CAN-SPAM/TCPA for outreach) and each site's terms.
A field is null — why? Not every field is published for every agent (e.g. email needs enrichment). Fields are null only when the data isn't published, never because the scraper skipped it.
Need help?
Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests (more carriers, more fields) are welcome — this actor is actively maintained.